package day15.socketdemo02;

import java.io.IOException;
import java.net.*;
import java.nio.charset.StandardCharsets;
import java.util.Scanner;

/**
 * @author Xiao
 * @date 2021/8/8
 */
public class ClientDemo02 {
    /**
     * 按照下面的要求实现程序：
     * 	UDP发送数据：数据来自于键盘录入，直到输入的数据是886，发送数据结束；
     * 	UDP接收数据：因为接收端不知道发送端什么时候停止发送，故采用死循环接收。
     */
    public static void main(String[] args) throws IOException {
        DatagramSocket ds = new DatagramSocket();
        Scanner sc = new Scanner(System.in);
        while (true) {
            System.out.println("请输入您要发送的数据(输入886停止发送)：");
            String s = sc.nextLine();
            if ("886".equals(s)) {
                break;
            }
            byte[] bytes = s.getBytes();
            InetAddress address = InetAddress.getByName("127.0.0.1");
            int port = 10000;
            DatagramPacket dp = new DatagramPacket(
                    s.getBytes(),bytes.length,address,port);
            ds.send(dp);
        }
        ds.close();
    }
}
